﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000DF9 RID: 3577
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class RelicFilterPlan : IMessage<RelicFilterPlan>, IMessage, IEquatable<RelicFilterPlan>, IDeepCloneable<RelicFilterPlan>, IBufferMessage
	{
		// Token: 0x17002D6A RID: 11626
		// (get) Token: 0x0600A08E RID: 41102 RVA: 0x001AD49B File Offset: 0x001AB69B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<RelicFilterPlan> Parser
		{
			get
			{
				return RelicFilterPlan._parser;
			}
		}

		// Token: 0x17002D6B RID: 11627
		// (get) Token: 0x0600A08F RID: 41103 RVA: 0x001AD4A2 File Offset: 0x001AB6A2
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return RelicFilterPlanReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17002D6C RID: 11628
		// (get) Token: 0x0600A090 RID: 41104 RVA: 0x001AD4B4 File Offset: 0x001AB6B4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return RelicFilterPlan.Descriptor;
			}
		}

		// Token: 0x0600A091 RID: 41105 RVA: 0x001AD4BB File Offset: 0x001AB6BB
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RelicFilterPlan()
		{
		}

		// Token: 0x0600A092 RID: 41106 RVA: 0x001AD4D0 File Offset: 0x001AB6D0
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RelicFilterPlan(RelicFilterPlan other) : this()
		{
			this.slotIndex_ = other.slotIndex_;
			this.isMarked_ = other.isMarked_;
			this.name_ = other.name_;
			this.updateTimestamp_ = other.updateTimestamp_;
			this.avatarIdOnCreate_ = other.avatarIdOnCreate_;
			this.settings_ = ((other.settings_ != null) ? other.settings_.Clone() : null);
			this.icon_ = ((other.icon_ != null) ? other.icon_.Clone() : null);
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600A093 RID: 41107 RVA: 0x001AD568 File Offset: 0x001AB768
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RelicFilterPlan Clone()
		{
			return new RelicFilterPlan(this);
		}

		// Token: 0x17002D6D RID: 11629
		// (get) Token: 0x0600A094 RID: 41108 RVA: 0x001AD570 File Offset: 0x001AB770
		// (set) Token: 0x0600A095 RID: 41109 RVA: 0x001AD578 File Offset: 0x001AB778
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint SlotIndex
		{
			get
			{
				return this.slotIndex_;
			}
			set
			{
				this.slotIndex_ = value;
			}
		}

		// Token: 0x17002D6E RID: 11630
		// (get) Token: 0x0600A096 RID: 41110 RVA: 0x001AD581 File Offset: 0x001AB781
		// (set) Token: 0x0600A097 RID: 41111 RVA: 0x001AD589 File Offset: 0x001AB789
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool IsMarked
		{
			get
			{
				return this.isMarked_;
			}
			set
			{
				this.isMarked_ = value;
			}
		}

		// Token: 0x17002D6F RID: 11631
		// (get) Token: 0x0600A098 RID: 41112 RVA: 0x001AD592 File Offset: 0x001AB792
		// (set) Token: 0x0600A099 RID: 41113 RVA: 0x001AD59A File Offset: 0x001AB79A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public string Name
		{
			get
			{
				return this.name_;
			}
			set
			{
				this.name_ = ProtoPreconditions.CheckNotNull<string>(value, "value");
			}
		}

		// Token: 0x17002D70 RID: 11632
		// (get) Token: 0x0600A09A RID: 41114 RVA: 0x001AD5AD File Offset: 0x001AB7AD
		// (set) Token: 0x0600A09B RID: 41115 RVA: 0x001AD5B5 File Offset: 0x001AB7B5
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public long UpdateTimestamp
		{
			get
			{
				return this.updateTimestamp_;
			}
			set
			{
				this.updateTimestamp_ = value;
			}
		}

		// Token: 0x17002D71 RID: 11633
		// (get) Token: 0x0600A09C RID: 41116 RVA: 0x001AD5BE File Offset: 0x001AB7BE
		// (set) Token: 0x0600A09D RID: 41117 RVA: 0x001AD5C6 File Offset: 0x001AB7C6
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint AvatarIdOnCreate
		{
			get
			{
				return this.avatarIdOnCreate_;
			}
			set
			{
				this.avatarIdOnCreate_ = value;
			}
		}

		// Token: 0x17002D72 RID: 11634
		// (get) Token: 0x0600A09E RID: 41118 RVA: 0x001AD5CF File Offset: 0x001AB7CF
		// (set) Token: 0x0600A09F RID: 41119 RVA: 0x001AD5D7 File Offset: 0x001AB7D7
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RelicFilterPlanSettings Settings
		{
			get
			{
				return this.settings_;
			}
			set
			{
				this.settings_ = value;
			}
		}

		// Token: 0x17002D73 RID: 11635
		// (get) Token: 0x0600A0A0 RID: 41120 RVA: 0x001AD5E0 File Offset: 0x001AB7E0
		// (set) Token: 0x0600A0A1 RID: 41121 RVA: 0x001AD5E8 File Offset: 0x001AB7E8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RelicFilterPlanIcon Icon
		{
			get
			{
				return this.icon_;
			}
			set
			{
				this.icon_ = value;
			}
		}

		// Token: 0x0600A0A2 RID: 41122 RVA: 0x001AD5F1 File Offset: 0x001AB7F1
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as RelicFilterPlan);
		}

		// Token: 0x0600A0A3 RID: 41123 RVA: 0x001AD600 File Offset: 0x001AB800
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(RelicFilterPlan other)
		{
			return other != null && (other == this || (this.SlotIndex == other.SlotIndex && this.IsMarked == other.IsMarked && !(this.Name != other.Name) && this.UpdateTimestamp == other.UpdateTimestamp && this.AvatarIdOnCreate == other.AvatarIdOnCreate && object.Equals(this.Settings, other.Settings) && object.Equals(this.Icon, other.Icon) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x0600A0A4 RID: 41124 RVA: 0x001AD6A8 File Offset: 0x001AB8A8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.SlotIndex != 0U)
			{
				num ^= this.SlotIndex.GetHashCode();
			}
			if (this.IsMarked)
			{
				num ^= this.IsMarked.GetHashCode();
			}
			if (this.Name.Length != 0)
			{
				num ^= this.Name.GetHashCode();
			}
			if (this.UpdateTimestamp != 0L)
			{
				num ^= this.UpdateTimestamp.GetHashCode();
			}
			if (this.AvatarIdOnCreate != 0U)
			{
				num ^= this.AvatarIdOnCreate.GetHashCode();
			}
			if (this.settings_ != null)
			{
				num ^= this.Settings.GetHashCode();
			}
			if (this.icon_ != null)
			{
				num ^= this.Icon.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x0600A0A5 RID: 41125 RVA: 0x001AD779 File Offset: 0x001AB979
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x0600A0A6 RID: 41126 RVA: 0x001AD781 File Offset: 0x001AB981
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x0600A0A7 RID: 41127 RVA: 0x001AD78C File Offset: 0x001AB98C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.settings_ != null)
			{
				output.WriteRawTag(10);
				output.WriteMessage(this.Settings);
			}
			if (this.icon_ != null)
			{
				output.WriteRawTag(74);
				output.WriteMessage(this.Icon);
			}
			if (this.AvatarIdOnCreate != 0U)
			{
				output.WriteRawTag(80);
				output.WriteUInt32(this.AvatarIdOnCreate);
			}
			if (this.SlotIndex != 0U)
			{
				output.WriteRawTag(96);
				output.WriteUInt32(this.SlotIndex);
			}
			if (this.IsMarked)
			{
				output.WriteRawTag(104);
				output.WriteBool(this.IsMarked);
			}
			if (this.Name.Length != 0)
			{
				output.WriteRawTag(114);
				output.WriteString(this.Name);
			}
			if (this.UpdateTimestamp != 0L)
			{
				output.WriteRawTag(120);
				output.WriteInt64(this.UpdateTimestamp);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x0600A0A8 RID: 41128 RVA: 0x001AD878 File Offset: 0x001ABA78
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.SlotIndex != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.SlotIndex);
			}
			if (this.IsMarked)
			{
				num += 2;
			}
			if (this.Name.Length != 0)
			{
				num += 1 + CodedOutputStream.ComputeStringSize(this.Name);
			}
			if (this.UpdateTimestamp != 0L)
			{
				num += 1 + CodedOutputStream.ComputeInt64Size(this.UpdateTimestamp);
			}
			if (this.AvatarIdOnCreate != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.AvatarIdOnCreate);
			}
			if (this.settings_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.Settings);
			}
			if (this.icon_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.Icon);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x0600A0A9 RID: 41129 RVA: 0x001AD940 File Offset: 0x001ABB40
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(RelicFilterPlan other)
		{
			if (other == null)
			{
				return;
			}
			if (other.SlotIndex != 0U)
			{
				this.SlotIndex = other.SlotIndex;
			}
			if (other.IsMarked)
			{
				this.IsMarked = other.IsMarked;
			}
			if (other.Name.Length != 0)
			{
				this.Name = other.Name;
			}
			if (other.UpdateTimestamp != 0L)
			{
				this.UpdateTimestamp = other.UpdateTimestamp;
			}
			if (other.AvatarIdOnCreate != 0U)
			{
				this.AvatarIdOnCreate = other.AvatarIdOnCreate;
			}
			if (other.settings_ != null)
			{
				if (this.settings_ == null)
				{
					this.Settings = new RelicFilterPlanSettings();
				}
				this.Settings.MergeFrom(other.Settings);
			}
			if (other.icon_ != null)
			{
				if (this.icon_ == null)
				{
					this.Icon = new RelicFilterPlanIcon();
				}
				this.Icon.MergeFrom(other.Icon);
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x0600A0AA RID: 41130 RVA: 0x001ADA29 File Offset: 0x001ABC29
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600A0AB RID: 41131 RVA: 0x001ADA34 File Offset: 0x001ABC34
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num <= 80U)
				{
					if (num == 10U)
					{
						if (this.settings_ == null)
						{
							this.Settings = new RelicFilterPlanSettings();
						}
						input.ReadMessage(this.Settings);
						continue;
					}
					if (num == 74U)
					{
						if (this.icon_ == null)
						{
							this.Icon = new RelicFilterPlanIcon();
						}
						input.ReadMessage(this.Icon);
						continue;
					}
					if (num == 80U)
					{
						this.AvatarIdOnCreate = input.ReadUInt32();
						continue;
					}
				}
				else if (num <= 104U)
				{
					if (num == 96U)
					{
						this.SlotIndex = input.ReadUInt32();
						continue;
					}
					if (num == 104U)
					{
						this.IsMarked = input.ReadBool();
						continue;
					}
				}
				else
				{
					if (num == 114U)
					{
						this.Name = input.ReadString();
						continue;
					}
					if (num == 120U)
					{
						this.UpdateTimestamp = input.ReadInt64();
						continue;
					}
				}
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x04003DEC RID: 15852
		private static readonly MessageParser<RelicFilterPlan> _parser = new MessageParser<RelicFilterPlan>(() => new RelicFilterPlan());

		// Token: 0x04003DED RID: 15853
		private UnknownFieldSet _unknownFields;

		// Token: 0x04003DEE RID: 15854
		public const int SlotIndexFieldNumber = 12;

		// Token: 0x04003DEF RID: 15855
		private uint slotIndex_;

		// Token: 0x04003DF0 RID: 15856
		public const int IsMarkedFieldNumber = 13;

		// Token: 0x04003DF1 RID: 15857
		private bool isMarked_;

		// Token: 0x04003DF2 RID: 15858
		public const int NameFieldNumber = 14;

		// Token: 0x04003DF3 RID: 15859
		private string name_ = "";

		// Token: 0x04003DF4 RID: 15860
		public const int UpdateTimestampFieldNumber = 15;

		// Token: 0x04003DF5 RID: 15861
		private long updateTimestamp_;

		// Token: 0x04003DF6 RID: 15862
		public const int AvatarIdOnCreateFieldNumber = 10;

		// Token: 0x04003DF7 RID: 15863
		private uint avatarIdOnCreate_;

		// Token: 0x04003DF8 RID: 15864
		public const int SettingsFieldNumber = 1;

		// Token: 0x04003DF9 RID: 15865
		private RelicFilterPlanSettings settings_;

		// Token: 0x04003DFA RID: 15866
		public const int IconFieldNumber = 9;

		// Token: 0x04003DFB RID: 15867
		private RelicFilterPlanIcon icon_;
	}
}
